home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / admin / linuxcon.000 / linuxcon / linuxconf-1.6 / apache / internal.h < prev    next >
C/C++ Source or Header  |  1996-08-03  |  2KB  |  91 lines

  1. #pragma interface
  2. #ifndef INTERNAL_H
  3. #define INTERNAL_H
  4.  
  5. #ifndef MISC_H
  6.     #include "../misc/misc.h"
  7. #endif
  8. #ifndef MODULE_H
  9.     #include "../misc/module.h"
  10. #endif
  11.  
  12. #ifndef NETCONF_H
  13.     #include "../netconf/netconf.h"
  14. #endif
  15.  
  16. class MODULE_APACHE: public LINUXCONF_MODULE{
  17.     /*~PROTOBEG~ MODULE_APACHE */
  18. public:
  19.     MODULE_APACHE (void);
  20.     void domenu (MENU_CONTEXT context,
  21.          const char *key);
  22.     int probe (int state, int target);
  23.     void setmenu (DIALOG&dia, MENU_CONTEXT context);
  24.     /*~PROTOEND~ MODULE_APACHE */
  25. };
  26.  
  27.  
  28. class HTTPD_DOMAIN: public ARRAY_OBJ{
  29.     friend class HTTPD_CONFIG;
  30.     CSSTRING host;
  31.     CSSTRING serveradmin;
  32.     CSSTRING servername;
  33.     CSSTRING documentroot;
  34.     CSSTRING errlog;
  35.     CSSTRING transferlog;
  36.     /*~PROTOBEG~ HTTPD_DOMAIN */
  37. public:
  38.     void write (FILE *fout);
  39.     /*~PROTOEND~ HTTPD_DOMAIN */
  40. };
  41.  
  42. class HTTPD_DOMAINS: public ARRAY{
  43.     /*~PROTOBEG~ HTTPD_DOMAINS */
  44. public:
  45.     HTTPD_DOMAIN *getitem (int no);
  46.     /*~PROTOEND~ HTTPD_DOMAINS */
  47. };
  48. class HTTPD_CONFIG{
  49.     int in_use;            // Httpd is operationnal on this system
  50.     SSTRING comment_port;
  51.     int port;
  52.     SSTRING comment_startservers;
  53.     int startservers;
  54.     SSTRING comment_maxclients;
  55.     int maxclients;
  56.     SSTRING comment_maxrequestsperchild;
  57.     int maxrequestsperchild;
  58.     SSTRING comment_minspareservers;
  59.     int minspareservers;
  60.     SSTRING comment_maxspareservers;
  61.     int maxspareservers;
  62.     SSTRING comment_servertype;
  63.     char servertype;    // 0: Standalone
  64.                         // 1: inetd
  65.     CSSTRING pidfile;
  66.     CSSTRING uid;
  67.     CSSTRING gid;
  68.     CSSTRING user;
  69.     CSSTRING group;
  70.     HTTPD_DOMAINS domains;
  71.     HTTPD_DOMAIN defdom;        // Option par dΘfaut
  72.     SSTRING comment_timeout;
  73.     int timeout;
  74.     CSSTRING scoreboardfile;
  75.     /*~PROTOBEG~ HTTPD_CONFIG */
  76. public:
  77.     HTTPD_CONFIG (void);
  78.     int write (void);
  79.     /*~PROTOEND~ HTTPD_CONFIG */
  80. };
  81.  
  82. class DAEMON_HTTPD: public DAEMON{
  83.     /*~PROTOBEG~ DAEMON_HTTPD */
  84. public:
  85.     int startif (void);
  86.     /*~PROTOEND~ DAEMON_HTTPD */
  87. };
  88.  
  89. #endif
  90.  
  91.